var strArray = location.search;

var newTime = timeAll();

// 获取物流名称
var goodName='';


// 查看预估计接口调用
function getPaltform() {
    var timeStamp = "timeStamp:" + newTime + "BM";
    var signs = md5(timeStamp);
    signs = signs.toUpperCase();
    $.ajax({
        type: "post",
        url: webUrl + "paltformTransaction/allExpress",
        data: {
            "timeStamp": newTime,
            "sign": signs,
        },
        dataType: "JSON",
        async: false,
        success: function (data) {
            if (data.status == 200) {

                if (data.data.length > 0) {
                    for (var i = 0; i < data.data.length; i++) {
                        var selectList = '<option value=' + data.data[i].expressCode + '>' + data.data[i].expressName + '</option>';
                        $("#country").append(selectList);
                        getVal();
                    }
                }
            } else if (data.status == 300) {
                document.location.href = '../../html/login.html';
            } else if (data.status == 500) {
                dialog(data.msg);
            } else {
                dialog(data.msg);
            }
        },
        error: function (data) {
            //弹出报错内容　　
            dialog("服务器异常")
        }
    })
}

var index = 0;
//select的onchange调用函数
function getVal() {
    var countrySelect = document.getElementById('country');//获取select的dom
    index = countrySelect.selectedIndex;//获取选中的index
    goodName = countrySelect.options[index].value;//获取value值

}

var fileList = '';
$(function () {
    var delParent;
    var defaults = {
        fileType: ["jpg", "png", "bmp", "jpeg"],   // 上传文件的类型
        fileSize: 1024 * 1024 * 10                  // 上传文件的大小 10M
    };
    /*点击图片的文本框*/
    $(".file").change(function () {
        var idFile = $(this).attr("id");
        var file = document.getElementById(idFile);
        var imgContainer = $(this).parents(".z_photo"); //存放图片的父亲元素
        fileList = file.files; //获取的图片文件
        var input = $(this).parent();//文本框的父亲元素
        var imgArr = [];
        //遍历得到的图片文件
        var numUp = imgContainer.find(".up-section").length;
        var totalNum = numUp + fileList.length;  //总的数量
        if (fileList.length > 1 || totalNum > 1) {
            alert("上传图片数目不可以超过1个，请重新选择");  //一次选择上传超过5个 或者是已经上传和这次上传的到的总数也不可以超过5个
        }
        else if (numUp < 1) {
            fileList = validateUp(fileList);
            for (var i = 0; i < fileList.length; i++) {
                var imgUrl = window.URL.createObjectURL(fileList[i]);

                imgArr.push(imgUrl);
                var $section = $("<section class='up-section fl loading'>");
                imgContainer.prepend($section);
                var $span = $("<span class='up-span'>");
                $span.appendTo($section);

                var $img0 = $("<img class='close-upimg'>").on("click", function (event) {
                    event.preventDefault();
                    event.stopPropagation();
                    $(".works-mask").show();
                    delParent = $(this).parent();
                });
                $img0.attr("src", "../../sellUpstream/addimg/upImg/cha.png").appendTo($section);
                var $img = $("<img class='up-img up-opcity'>");
                $img.attr("src", imgArr[i]);
                $img.appendTo($section);
                var $p = $("<p class='img-name-p'>");
                $p.html(fileList[i].name).appendTo($section);
                var $input = $("<input id='taglocation' name='taglocation' value='' type='hidden'>");
                $input.appendTo($section);
                var $input2 = $("<input id='tags' name='tags' value='' type='hidden'/>");
                $input2.appendTo($section);
                fileList = fileList[i];
            }
        }
        setTimeout(function () {
            $(".up-section").removeClass("loading");
            $(".up-img").removeClass("up-opcity");
        }, 450);
        numUp = imgContainer.find(".up-section").length;
        if (numUp >= 1) {
            $(this).parent().hide();
        }
    });


    $(".z_photo").delegate(".close-upimg", "click", function () {
        $(".works-mask").show();
        delParent = $(this).parent();
    });

    $(".wsdel-ok").click(function () {
        $(".works-mask").hide();
        var numUp = delParent.siblings().length;
        if (numUp < 2) {
            delParent.parent().find(".z_file").show();
        }
        delParent.remove();
    });

    $(".wsdel-no").click(function () {
        $(".works-mask").hide();
    });

    function validateUp(files) {
        var arrFiles = [];//替换的文件数组
        for (var i = 0, file; file = files[i]; i++) {
            //获取文件上传的后缀名
            var newStr = file.name.split("").reverse().join("");
            if (newStr.split(".")[0] != null) {
                var type = newStr.split(".")[0].split("").reverse().join("");
                if (jQuery.inArray(type, defaults.fileType) > -1) {
                    // 类型符合，可以上传
                    if (file.size >= defaults.fileSize) {
                        alert(file.size);
                        alert('您这个"' + file.name + '"文件大小过大');
                    } else {
                        // 在这里需要判断当前所有文件中
                        arrFiles.push(file);
                    }
                } else {
                    alert('您这个"' + file.name + '"上传类型不符合');
                }
            } else {
                alert('您这个"' + file.name + '"没有类型, 无法识别');
            }
        }
        return arrFiles;
    }

})


function upMoreImg() {
    //TODO 以下几个值请确保填上再调用示例里的sdk方法
    //具体可以到https://console.qcloud.com/cos 进行查看
    var bucket = 'test';
    var appid = '1255372231';
    var sid = 'AKIDxvy2CLaG1gBVftOo48SlwyCIEzCMN9zh';
    var skey = 'hJrEQSJ6iCVfeScdTIwOgqsmW5UjnfS5';
    var region = 'sh';
    //TODO 以上几个值请确保填上再调用示例里的sdk方法

    var myFolder = '/';//需要操作的目录

    //初始化逻辑
    //特别注意: JS-SDK使用之前请先到console.qcloud.com/cos 对相应的Bucket进行跨域设置
    var cos = new CosCloud({
        appid: appid,// APPID 必填参数
        bucket: bucket,//bucketName 必填参数
        region: region,//地域信息 必填参数 华南地区填gz 华东填sh 华北填tj
        getAppSign: function (callback) {//获取签名 必填参数


            //下面简单讲一下获取签名的几种办法，签名请做一次 url encode
            //1.搭建一个鉴权服务器，自己构造请求参数获取签名，推荐实际线上业务使用，优点是安全性好，不会暴露自己的私钥
            /**
             $.ajax('SIGN_URL').done(function (data) {
                        var sig = data.sign;
                        callback(sig);
                    });
             **/


                //2.直接在浏览器前端计算签名，需要获取自己的accessKey和secretKey, 一般在调试阶段使用
            var self = this;
            var random = parseInt(Math.random() * Math.pow(2, 32));
            var now = parseInt(new Date().getTime() / 1000);
            var e = now + 60; //签名过期时间为当前+60s
            var path = '';//多次签名这里填空
            var str = 'a=' + self.appid + '&k=' + sid + '&e=' + e + '&t=' + now + '&r=' + random +
                '&f=' + path + '&b=' + self.bucket;

            var sha1Res = CryptoJS.HmacSHA1(str, skey);//这里使用CryptoJS计算sha1值，你也可以用其他开源库或自己实现
            var strWordArray = CryptoJS.enc.Utf8.parse(str);
            var resWordArray = sha1Res.concat(strWordArray);
            var res = resWordArray.toString(CryptoJS.enc.Base64);

            setTimeout(function () {//setTimeout模拟一下网络延迟的情况
                callback(res);
            }, 1000);


            //3.直接复用别人算好的签名字符串, 一般在调试阶段使用
            //callback('YOUR_SIGN_STR')

        },
        getAppSignOnce: function (callback) {//单次签名，参考上面的注释即可
            var self = this;
            var random = parseInt(Math.random() * Math.pow(2, 32));
            var now = parseInt(new Date().getTime() / 1000);
            var e = 0; //单次签名 expire==0
            var path = self.path;
            var str = 'a=' + self.appid + '&k=' + sid + '&e=' + e + '&t=' + now + '&r=' + random +
                '&f=' + path + '&b=' + self.bucket;

            var sha1Res = CryptoJS.HmacSHA1(str, skey);//这里使用CryptoJS计算sha1值，你也可以用其他开源库或自己实现
            var strWordArray = CryptoJS.enc.Utf8.parse(str);
            var resWordArray = sha1Res.concat(strWordArray);
            var res = resWordArray.toString(CryptoJS.enc.Base64);

            setTimeout(function () {//setTimeout模拟一下网络延迟的情况
                callback(res);
            }, 1000);
        }
    });
    var resultStr = '';
    var successCallBack = function (result) {
        resultStr = result.data.source_url;
        var inputNum = $('#inputNum').val();

        var  orderId = strArray.split("?")[1].split("=")[1];


        var timeStamp = "timeStamp:" + newTime + "BM" + "expressCode:" + goodName + "BM" + "expressNum:" +
            inputNum + "BM" + "orderIds:" + orderId + "BM" + "orderStatus:" + '410' + "BM" + "images:" + resultStr + "BM";
        var signs = md5(timeStamp);

        signs = signs.toUpperCase();

        $.ajax({
            type: "post",
            url: webUrl + "paltformTransaction/postBatchDeliveryOrCancle",
            data: {
                "timeStamp": newTime,
                "expressCode": goodName,
                "expressNum": inputNum,
                "orderIds": orderId,
                "orderStatus": '410',
                "images": resultStr,
                "sign": signs,
            },
            dataType: "JSON",
            async: false,
            success: function (data) {
                if (data.status == 200) {
                    self.location=document.referrer;
                } else if (data.status == 300) {
                    document.location.href = '../../html/login.html';
                } else if (data.status == 500) {
                    dialog(data.msg);
                }
            },
            error: function (data) {
                //弹出报错内容　　
                dialog("服务器异常")
            }
        })

    };

    var errorCallBack = function (result) {
        result = result || {};
        // console.log('request error:', result && result.message);
        $("#result").val(result.responseText || 'error');
    };

    var progressCallBack = function (curr, sha1) {
        var sha1CheckProgress = ((sha1 * 100).toFixed(2) || 100) + '%';
        var uploadProgress = ((curr || 0) * 100).toFixed(2) + '%';
        var msg = 'upload progress:' + uploadProgress + '; sha1 check:' + sha1CheckProgress + '.';

    };

    var lastTaskId;
    var taskReady = function (taskId) {
        lastTaskId = taskId;
    };

    //上传文件,适合小于20M的文件上传
    $('#uploadFile').on('click', function () {
        var inputNum = $('#inputNum').val();

        var dddd = fileList.name;
        var reg = new RegExp("^.*undefined.*$");
        if (inputNum == '') {
            dialog("请填写物流单号")
        } else if (reg.test(dddd)) {
            dialog("请上传快递图片")
        } else {
            cos.uploadFile(successCallBack, errorCallBack, progressCallBack, bucket, myFolder + fileList.name, fileList, 0, taskReady);//insertOnly==0 表示允许覆盖文件 1表示不允许
        }
    });

}

